

<%@ page contentType="text/html;charset=GBK"%> 
<%@ page import = "org.jfree.chart.ChartFactory, 
                  org.jfree.chart.ChartPanel, 
                  org.jfree.chart.JFreeChart, 
  org.jfree.chart.servlet.ServletUtilities, 
  org.jfree.chart.*, 
  org.jfree.chart.StandardLegend, 
  org.jfree.chart.axis.DateAxis, 
  org.jfree.chart.plot.XYPlot, 
  org.jfree.chart.renderer.StandardXYItemRenderer, 
  org.jfree.chart.renderer.XYItemRenderer, 
  org.jfree.data.XYDataset, 
  org.jfree.data.time.Month, 
  org.jfree.data.time.TimeSeries, 
  org.jfree.data.time.TimeSeriesCollection 
"%> 
<% 

       TimeSeries s1 = new TimeSeries("L&G European Index Trust", Month.class); 
       s1.add(new Month(2, 2001), 181.8); 
       s1.add(new Month(3, 2001), 167.3); 
       s1.add(new Month(4, 2001), 153.8); 
       s1.add(new Month(5, 2001), 167.6); 
       s1.add(new Month(6, 2001), 158.8); 
       s1.add(new Month(7, 2001), 148.3); 
       s1.add(new Month(8, 2001), 153.9); 
       s1.add(new Month(9, 2001), 142.7); 
       s1.add(new Month(10, 2001), 123.2); 
       s1.add(new Month(11, 2001), 131.8); 
       s1.add(new Month(12, 2001), 139.6); 
       s1.add(new Month(1, 2002), 142.9); 
       s1.add(new Month(2, 2002), 138.7); 
       s1.add(new Month(3, 2002), 137.3); 
       s1.add(new Month(4, 2002), 143.9); 
       s1.add(new Month(5, 2002), 139.8); 
       s1.add(new Month(6, 2002), 137.0); 
       s1.add(new Month(7, 2002), 132.8); 

       TimeSeries s2 = new TimeSeries("L&G UK Index Trust", Month.class); 
       s2.add(new Month(2, 2001), 129.6); 
       s2.add(new Month(3, 2001), 123.2); 
       s2.add(new Month(4, 2001), 117.2); 
       s2.add(new Month(5, 2001), 124.1); 
       s2.add(new Month(6, 2001), 122.6); 
       s2.add(new Month(7, 2001), 119.2); 
       s2.add(new Month(8, 2001), 116.5); 
       s2.add(new Month(9, 2001), 112.7); 
       s2.add(new Month(10, 2001), 101.5); 
       s2.add(new Month(11, 2001), 106.1); 
       s2.add(new Month(12, 2001), 110.3); 
       s2.add(new Month(1, 2002), 111.7); 
       s2.add(new Month(2, 2002), 111.0); 
       s2.add(new Month(3, 2002), 109.6); 
       s2.add(new Month(4, 2002), 113.2); 
       s2.add(new Month(5, 2002), 111.6); 
       s2.add(new Month(6, 2002), 108.8); 
       s2.add(new Month(7, 2002), 101.6); 

       TimeSeriesCollection dataset = new TimeSeriesCollection(); 
       dataset.addSeries(s1); 
       dataset.addSeries(s2); 

       dataset.setDomainIsPointsInTime(true); 
JFreeChart chart = ChartFactory.createTimeSeriesChart( 
           "Legal & General Unit Trust Prices", 
           "Date", "Price Per Unit", 
           dataset, 
           true, 
           true, 
           false 
       ); 

       //chart.setBackgroundPaint(Color.white); 

       StandardLegend sl = (StandardLegend) chart.getLegend(); 
       sl.setDisplaySeriesShapes(true); 

       XYPlot plot = chart.getXYPlot(); 
      // plot.setBackgroundPaint(Color.lightGray); 
       //plot.setDomainGridlinePaint(Color.white); 
       //plot.setRangeGridlinePaint(Color.white); 
      //plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 5.0, 5.0, 5.0, 5.0)); 
       plot.setDomainCrosshairVisible(true); 
       plot.setRangeCrosshairVisible(true); 
        
       XYItemRenderer renderer = plot.getRenderer(); 
       if (renderer instanceof StandardXYItemRenderer) { 
           StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer; 
           rr.setPlotShapes(true); 
           rr.setShapesFilled(true); 
       } 
        
       DateAxis axis = (DateAxis) plot.getDomainAxis(); 
       //axis.setDateFormatOverride(new SimpleDateFormat("MM-yyyy")); 

  
String filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, null, session); 
String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename; 
%> 
<img src="<%= graphURL %>" width=500 height=300 border=0 usemap="#<%= filename %>"> 
